1. Field of the invention
The invention relates to a method of collecting usage data of an on-demand service provided to a subscriber. The invention also relates to a computer program product and to a data processing system for collecting usage data of an on-demand service provided to a subscriber.
2. Description of the Related Art
On-demand services are commonly used to provide web based or computer based services to subscribers. For example, a video on-demand service allows its subscribers to select and watch video content over a network as part of an interactive television system. On-demand computing, also known as utility computing, can be understood as the delivery and management of on-demand services whereby computer resources and services are provided on an on-demand and pay-per-use basis. Customers of the on-demand service do not have to invest in owning (peak need) resources anymore as they are only billed for the actual use of resources provided by the on-demand service.
On-demand software, also known as applications on demand or as application services, falls also within the scope of on-demand services. An application service provider provides computer based services to customers over a network, e.g., the Internet. The need for application service providers has evolved from the increasing costs of specialized software that have far exceeded the price range of small- or medium-sized businesses. As well, the growing complexities of software have led to huge costs in distributing the software to end users. Through application service providers, the complexities and costs of such software can be cut down. In addition, the issues of upgrading have been eliminated from the end-firm by placing the onus on the application service providers to maintain up-to-date services, 24/7 technical support, physical and electronic security and inbuilt support for business continuity and flexible working.
In traditional data centers, IT services are deployed on a static set of IT resources—servers, storage, network, and/or applications. The customers of a service or a set of services are charged for the provision of the service. The set of services to be delivered to the customers as well as the capacity required to provide the services are according to traditional accounting negotiated between the service provider and the customer, e.g., at the beginning of the fiscal year. The customer is then charged for the usage of the service, for example on a monthly basis.
Metering which is the process of determining the amount of resources and services used per customer is in these traditional environments performed on a per resource basis, whereby the resource corresponds to the underlying component or set of components adapted to provide the service to the customer. Local instrumentations running on the resource in conjunction with a metering system that collects the usage data for use by the local instrumentation on a regular basis, e.g., once a day, allows one to bill customers based on the collected usage data obtained by the metering system from the underlying resources of the service.
With utility computing, data centers now offer through on-demand management systems a multitude of services to a plurality of subscribers in an ‘on demand’ fashion. An on-demand service instance is created and managed for a particular subscriber. This process is performed on actual needs of the subscriber rather than being negotiated between the provider and the customer at the beginning of the fiscal year. Each service instance is associated with a set of different underlying resources which actually deliver the service. The subscriber may be charged on a per usage basis, both for the service usage and the usage of the underlying resources. A service instance can be regarded as one or more manageable resources that provide an adaptation of the underlying resources and through which the services provided by the underlying resources can be made available to the subscribers.
An underlying resource might however be reassigned between service instances provided to different subscribers. The switch of an assignment of an underlying resource from one service to another might occur quickly and with a high frequency. The reassignment of an underlying resource therefore specifies additional points in time where metering data should be collected from the underlying resource. These additional points in time are however not taken into account by traditional and established metering systems which collect usage data as mentioned above on a regular basis, e.g., once a day.
Metering data in utility computing environments is required to be collected in the context of the on-demand service instance rather than in the context of the underlying resource as it is done in traditional IT environments.
There is therefore a need for an improved method of collecting usage data of an on-demand service provided to a subscriber. Accordingly, there is a need for an improved data processing system for collecting usage data of an on-demand service provided to a subscriber.